1794C - Scoring Subsequences - CodeForces Solution


binary search greedy two pointers

Please click on ads to support us..

C++ Code:

    ///keitherrrr
        #include <bits/stdc++.h>
        using namespace std;
 
        #define int long long 
        #define all(x) x.begin(), x.end()
        #define ll long long
        #define mp make_pair
        #define pb push_back
        #define pii pair <int, int>
        #define vi vector<int>
        
        #define FOR(i, a, b) for (int i=a; i<b; i++)
        #define FORd(i, a, b) for (int i=a-1; i>=b; i--)
        #define F0R(i, a) for (int i=0; i<a; i++)
        
        #define fi first
        #define se second
        #define be begin
        #define e end
        #define lb lower_bound
        #define ub upper_bound 
        #define db long double;
        #define mid ((r+l)>>1)
        #define tl (id<<1)
        #define tr (id<<1|1)
const int N=3e5+5;  
const ll inf=1e9;  
const int p=998244353;     
main(){
    ios_base::sync_with_stdio(0);cin.tie(0); 
    int t; cin >>t; while(t--){
       int n; cin>>n;  
       int m=1,tmp=1;   
       int a[n+1];  
       FOR(i,1,n+1){
            cin>>a[i];    
            if(i>1&&a[i]>=m+1){
                if(a[i-m]>=m+1) m++; 
            }  
            cout<<m<<' '; 
       }
       cout<<'\n'; 
    }
}


Comments

Submit
0 Comments
More Questions

1666F - Fancy Stack
1354A - Alarm Clock
1543B - Customising the Track
1337A - Ichihime and Triangle
1366A - Shovels and Swords
919A - Supermarket
630C - Lucky Numbers
1208B - Uniqueness
1384A - Common Prefixes
371A - K-Periodic Array
1542A - Odd Set
1567B - MEXor Mixup
669A - Little Artem and Presents
691B - s-palindrome
851A - Arpa and a research in Mexican wave
811A - Vladik and Courtesy
1006B - Polycarp's Practice
1422A - Fence
21D - Traveling Graph
1559B - Mocha and Red and Blue
1579C - Ticks
268B - Buttons
898A - Rounding
1372B - Omkar and Last Class of Math
1025D - Recovering BST
439A - Devu the Singer and Churu the Joker
1323A - Even Subset Sum Problem
1095A - Repeating Cipher
630F - Selection of Personnel
630K - Indivisibility